﻿using System;

namespace FinMkts
{
    /// <summary>
    /// A type of money.
    /// </summary>
    /// <remarks>
    /// See http://www.iso.org/iso/support/faqs/faqs_widely_used_standards/widely_used_standards_other/currency_codes/currency_codes_list-1.htm
    /// </remarks>
    /// <example>British Pounds Sterling (GBP), United States Dollars (USD), or Gold (XAU)</example>
    public class Currency
    {
        /// <summary>
        /// Three letter ISO code
        /// </summary>
        /// <example>GBP or USD</example>
        public string IsoCode { get; set; }

        /// <summary>
        /// Three digit numeric code
        /// </summary>
        /// <example>826 or 840</example>
        public short IsoNumber { get; set; }

        /// <summary>
        /// Description of the currency in English
        /// </summary>
        /// <example>Pound sterling, United States dollar</example>
        public string Name { get; set; }
    }

    public static class Currencies
    {
        public static readonly Currency GBP = new Currency { Name = "Pound sterling", IsoCode = "GBP", IsoNumber = 826 };
    }
}